package com.uum.admin.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.uum.admin.dto.UserAuthDTO;
import com.uum.admin.pojo.entity.SysUser;
import com.baomidou.mybatisplus.extension.service.IService;
import com.uum.admin.pojo.query.UserPageQuery;
import com.uum.admin.pojo.vo.UserPageVO;

import java.util.List;

public interface SysUserService extends IService<SysUser> {

    UserAuthDTO getUserByUsername(String username);

    SysUser getUserInfoByUserId(Long userId);

    void updateUser(SysUser user);

    void addUser(SysUser user);

    void completeDeleteBatch(List<String> ids);

    IPage<UserPageVO> pageUser(UserPageQuery userPageQuery);

    boolean register(SysUser user);

    boolean saveUserRole(Long userId, String roleCode);

    boolean activeUser(String token);

    boolean afreshActive(String username);

    boolean disabledUser(Long id, Integer status);
}
